
'''
模块化编程
def getCount():
    return 10

print(getCount())

def love(a,b,c,*args,name):
    print(a,b,c,*args)
    print(name)

love(1,2,3,4,5,6,name="张三")
'''
from functools import reduce

'''
匿名函数
lambda [参数列表]: 返回值

res = lambda x, y : x + y
print(res(1,2))


res = lambda sex: "很man" if sex == '男' else "很nice"
print(res('女'))
'''


'''
迭代器
f = [1,2,3,4]
res = iter(f)
print(next(res))
print(next(res))
'''

'''
zip
f = [1,2,3,4]
g = 'yfujgiikjbkj'
res = zip(f, g)
print(list(res))


*zip()
x = [1,2,3]
y = [4,5,6]
zipped = zip(x, y)
print(list(zipped))

x2,y2 = zip(*zip(x,y))
print(x2,y2)
'''

'''
sorted函数  排序
r = sorted([1,2,5,-4,3], reverse=True)
[-4, 1, 2, 3, 5]
r = sorted([1,2,5,-4,3], key=abs)
[1, 2, 3, -4, 5]
print(r)

map函数
map(func, *iterables)
    功能：对传入的可迭代数据中的每个元素进行处理，返回一个新的迭代器
    参数：
        func: 函数
        iterables 可迭代的数据
    返回值：一个新的迭代器
    
    r = map(int,['1','2','3'])
    print(list(r))
    [1, 2, 3]
    
    arr = ['a', 'b', 'c', 'd']
    res = map(lambda x : ord(x.upper()), arr)
    print(list(res))
    [65, 66, 67, 68]
    
    
reduce函数
def reduce(function, sequence, initial=None)
功能：
参数：
    function
    sequence
    initial
返回值： 
'''

reduce()
